Notebook criado para obter a temperatura central antes e depois dos "pulsos termicos". Esta informação será utilizada em um parametro do MESA que modifica a quantidade de camadas em relação a temperatura central


In [1]:
# lendo os dados do mesa
import mesa as ms
import numpy as np
folder2 = '/home/glauffer/Dropbox/UFRGS/kepler/mesa/alpha2/'
s = ms.history_data(folder2)


Using old history.datasa file ...
 reading ...100% 


In [2]:
s.cols


Out[2]:
{'burn_qtop_1': 156,
 'burn_qtop_10': 174,
 'burn_qtop_11': 176,
 'burn_qtop_12': 178,
 'burn_qtop_13': 180,
 'burn_qtop_14': 182,
 'burn_qtop_15': 184,
 'burn_qtop_16': 186,
 'burn_qtop_17': 188,
 'burn_qtop_18': 190,
 'burn_qtop_19': 192,
 'burn_qtop_2': 158,
 'burn_qtop_20': 194,
 'burn_qtop_21': 196,
 'burn_qtop_22': 198,
 'burn_qtop_23': 200,
 'burn_qtop_24': 202,
 'burn_qtop_25': 204,
 'burn_qtop_26': 206,
 'burn_qtop_27': 208,
 'burn_qtop_28': 210,
 'burn_qtop_29': 212,
 'burn_qtop_3': 160,
 'burn_qtop_30': 214,
 'burn_qtop_31': 216,
 'burn_qtop_32': 218,
 'burn_qtop_33': 220,
 'burn_qtop_34': 222,
 'burn_qtop_35': 224,
 'burn_qtop_36': 226,
 'burn_qtop_37': 228,
 'burn_qtop_38': 230,
 'burn_qtop_39': 232,
 'burn_qtop_4': 162,
 'burn_qtop_40': 234,
 'burn_qtop_41': 236,
 'burn_qtop_42': 238,
 'burn_qtop_43': 240,
 'burn_qtop_44': 242,
 'burn_qtop_45': 244,
 'burn_qtop_46': 246,
 'burn_qtop_47': 248,
 'burn_qtop_48': 250,
 'burn_qtop_49': 252,
 'burn_qtop_5': 164,
 'burn_qtop_50': 254,
 'burn_qtop_51': 256,
 'burn_qtop_52': 258,
 'burn_qtop_53': 260,
 'burn_qtop_54': 262,
 'burn_qtop_55': 264,
 'burn_qtop_56': 266,
 'burn_qtop_57': 268,
 'burn_qtop_58': 270,
 'burn_qtop_59': 272,
 'burn_qtop_6': 166,
 'burn_qtop_60': 274,
 'burn_qtop_61': 276,
 'burn_qtop_62': 278,
 'burn_qtop_63': 280,
 'burn_qtop_64': 282,
 'burn_qtop_65': 284,
 'burn_qtop_66': 286,
 'burn_qtop_67': 288,
 'burn_qtop_68': 290,
 'burn_qtop_69': 292,
 'burn_qtop_7': 168,
 'burn_qtop_70': 294,
 'burn_qtop_71': 296,
 'burn_qtop_72': 298,
 'burn_qtop_73': 300,
 'burn_qtop_74': 302,
 'burn_qtop_75': 304,
 'burn_qtop_76': 306,
 'burn_qtop_77': 308,
 'burn_qtop_78': 310,
 'burn_qtop_79': 312,
 'burn_qtop_8': 170,
 'burn_qtop_80': 314,
 'burn_qtop_9': 172,
 'burn_type_1': 155,
 'burn_type_10': 173,
 'burn_type_11': 175,
 'burn_type_12': 177,
 'burn_type_13': 179,
 'burn_type_14': 181,
 'burn_type_15': 183,
 'burn_type_16': 185,
 'burn_type_17': 187,
 'burn_type_18': 189,
 'burn_type_19': 191,
 'burn_type_2': 157,
 'burn_type_20': 193,
 'burn_type_21': 195,
 'burn_type_22': 197,
 'burn_type_23': 199,
 'burn_type_24': 201,
 'burn_type_25': 203,
 'burn_type_26': 205,
 'burn_type_27': 207,
 'burn_type_28': 209,
 'burn_type_29': 211,
 'burn_type_3': 159,
 'burn_type_30': 213,
 'burn_type_31': 215,
 'burn_type_32': 217,
 'burn_type_33': 219,
 'burn_type_34': 221,
 'burn_type_35': 223,
 'burn_type_36': 225,
 'burn_type_37': 227,
 'burn_type_38': 229,
 'burn_type_39': 231,
 'burn_type_4': 161,
 'burn_type_40': 233,
 'burn_type_41': 235,
 'burn_type_42': 237,
 'burn_type_43': 239,
 'burn_type_44': 241,
 'burn_type_45': 243,
 'burn_type_46': 245,
 'burn_type_47': 247,
 'burn_type_48': 249,
 'burn_type_49': 251,
 'burn_type_5': 163,
 'burn_type_50': 253,
 'burn_type_51': 255,
 'burn_type_52': 257,
 'burn_type_53': 259,
 'burn_type_54': 261,
 'burn_type_55': 263,
 'burn_type_56': 265,
 'burn_type_57': 267,
 'burn_type_58': 269,
 'burn_type_59': 271,
 'burn_type_6': 165,
 'burn_type_60': 273,
 'burn_type_61': 275,
 'burn_type_62': 277,
 'burn_type_63': 279,
 'burn_type_64': 281,
 'burn_type_65': 283,
 'burn_type_66': 285,
 'burn_type_67': 287,
 'burn_type_68': 289,
 'burn_type_69': 291,
 'burn_type_7': 167,
 'burn_type_70': 293,
 'burn_type_71': 295,
 'burn_type_72': 297,
 'burn_type_73': 299,
 'burn_type_74': 301,
 'burn_type_75': 303,
 'burn_type_76': 305,
 'burn_type_77': 307,
 'burn_type_78': 309,
 'burn_type_79': 311,
 'burn_type_8': 169,
 'burn_type_80': 313,
 'burn_type_9': 171,
 'c_core_mass': 26,
 'center_ar36': 64,
 'center_c12': 58,
 'center_ca40': 65,
 'center_cr56': 69,
 'center_entropy': 51,
 'center_fe54': 66,
 'center_fe56': 67,
 'center_h1': 56,
 'center_he4': 57,
 'center_n14': 59,
 'center_ne20': 61,
 'center_ni56': 68,
 'center_o16': 60,
 'center_omega': 48,
 'center_omega_div_omega_crit': 49,
 'center_s32': 63,
 'center_si28': 62,
 'center_ye': 50,
 'conv_mx1_bot': 10,
 'conv_mx1_top': 9,
 'conv_mx2_bot': 12,
 'conv_mx2_top': 11,
 'epsnuc_M_1': 17,
 'epsnuc_M_2': 18,
 'epsnuc_M_3': 19,
 'epsnuc_M_4': 20,
 'epsnuc_M_5': 21,
 'epsnuc_M_6': 22,
 'epsnuc_M_7': 23,
 'epsnuc_M_8': 24,
 'fe_core_mass': 29,
 'he_core_mass': 25,
 'kh_timescale': 30,
 'log_L': 33,
 'log_LH': 31,
 'log_LHe': 32,
 'log_R': 35,
 'log_Teff': 34,
 'log_abs_mdot': 4,
 'log_average_h1': 70,
 'log_average_h2': 71,
 'log_average_he3': 72,
 'log_average_he4': 73,
 'log_average_li7': 74,
 'log_center_P': 47,
 'log_center_Rho': 46,
 'log_center_T': 45,
 'log_dt': 6,
 'log_g': 36,
 'log_rotational_mdot_boost': 5,
 'log_total_angular_momentum': 8,
 'mix_qtop_1': 76,
 'mix_qtop_10': 94,
 'mix_qtop_11': 96,
 'mix_qtop_12': 98,
 'mix_qtop_13': 100,
 'mix_qtop_14': 102,
 'mix_qtop_15': 104,
 'mix_qtop_16': 106,
 'mix_qtop_17': 108,
 'mix_qtop_18': 110,
 'mix_qtop_19': 112,
 'mix_qtop_2': 78,
 'mix_qtop_20': 114,
 'mix_qtop_21': 116,
 'mix_qtop_22': 118,
 'mix_qtop_23': 120,
 'mix_qtop_24': 122,
 'mix_qtop_25': 124,
 'mix_qtop_26': 126,
 'mix_qtop_27': 128,
 'mix_qtop_28': 130,
 'mix_qtop_29': 132,
 'mix_qtop_3': 80,
 'mix_qtop_30': 134,
 'mix_qtop_31': 136,
 'mix_qtop_32': 138,
 'mix_qtop_33': 140,
 'mix_qtop_34': 142,
 'mix_qtop_35': 144,
 'mix_qtop_36': 146,
 'mix_qtop_37': 148,
 'mix_qtop_38': 150,
 'mix_qtop_39': 152,
 'mix_qtop_4': 82,
 'mix_qtop_40': 154,
 'mix_qtop_5': 84,
 'mix_qtop_6': 86,
 'mix_qtop_7': 88,
 'mix_qtop_8': 90,
 'mix_qtop_9': 92,
 'mix_type_1': 75,
 'mix_type_10': 93,
 'mix_type_11': 95,
 'mix_type_12': 97,
 'mix_type_13': 99,
 'mix_type_14': 101,
 'mix_type_15': 103,
 'mix_type_16': 105,
 'mix_type_17': 107,
 'mix_type_18': 109,
 'mix_type_19': 111,
 'mix_type_2': 77,
 'mix_type_20': 113,
 'mix_type_21': 115,
 'mix_type_22': 117,
 'mix_type_23': 119,
 'mix_type_24': 121,
 'mix_type_25': 123,
 'mix_type_26': 125,
 'mix_type_27': 127,
 'mix_type_28': 129,
 'mix_type_29': 131,
 'mix_type_3': 79,
 'mix_type_30': 133,
 'mix_type_31': 135,
 'mix_type_32': 137,
 'mix_type_33': 139,
 'mix_type_34': 141,
 'mix_type_35': 143,
 'mix_type_36': 145,
 'mix_type_37': 147,
 'mix_type_38': 149,
 'mix_type_39': 151,
 'mix_type_4': 81,
 'mix_type_40': 153,
 'mix_type_5': 83,
 'mix_type_6': 85,
 'mix_type_7': 87,
 'mix_type_8': 89,
 'mix_type_9': 91,
 'model_number': 1,
 'mx1_bot': 14,
 'mx1_top': 13,
 'mx2_bot': 16,
 'mx2_top': 15,
 'num_backups': 317,
 'num_retries': 316,
 'num_zones': 7,
 'o_core_mass': 27,
 'si_core_mass': 28,
 'star_age': 2,
 'star_mass': 3,
 'surf_avg_Lrad_div_Ledd': 44,
 'surf_avg_j_rot': 37,
 'surf_avg_omega': 38,
 'surf_avg_omega_crit': 39,
 'surf_avg_omega_div_omega_crit': 40,
 'surf_avg_v_crit': 42,
 'surf_avg_v_div_v_crit': 43,
 'surf_avg_v_rot': 41,
 'surface_c12': 53,
 'surface_he4': 52,
 'surface_n14': 54,
 'surface_o16': 55,
 'v_div_csound_surf': 315}

In [4]:
# extraindo os modelos, temperatura central e quantidade de zonas
model = s.get('model_number')
zones = s.get('num_zones')
ct = s.get('log_center_T')

In [24]:
# grafico de zonas vs model (para confirmar os dados de outro notebook)
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams["figure.figsize"] = (15., 10.)
#fig = plt.figure(figsize=(15., 10.))
plt.plot(model, zones, 'b.')
plt.plot(model[499], zones[499], 'ro')
plt.plot(model[2089], zones[2089], 'go')
print 'camadas modelo 500: ', zones[499]
print 'camadas modelo 2090: ', zones[2089]


camadas modelo 500:  994.0
camadas modelo 2090:  966.0

O grafico acima esta de acordo com os resultados obtidos no notebook "quantidade de camadas"


In [9]:
# grafico temperatura central vs model
fig = plt.figure(figsize=(15., 10.))
plt.plot(model, ct, 'b-')
plt.plot(model[499], ct[499], 'ro')
plt.plot(model[2089], ct[2089], 'go')
plt.ylabel(r'$\log T_c$', fontsize = 16)
plt.xlabel('Model', fontsize = 16)
print 'log temperatura central modelo 500: ', ct[499]
print 'log temperatura central modelo 2090: ', ct[2089]


log temperatura central modelo 500:  8.47546194353
log temperatura central modelo 2090:  8.60157490751

O Kepler pediu para obter a temperatura central no meio do caminho das supergigantes para modificar a quantidade de camadas a partir desse ponto. Determinando o modelo pelo HRD:


In [22]:
# plot do HRD
t = s.get('log_Teff')
L = s.get('log_L')
fig = plt.figure(figsize=(15., 10.))
plt.plot(t, L)
plt.plot(t[154], L[154], 'r.')
plt.plot(t[2089], L[2089], 'go')
plt.gca().invert_xaxis()
plt.title(r'HRD $\alpha_{MLT}=2$', fontsize=18)
plt.xlabel(r'$\log T_{Eff}$', fontsize=16)
plt.ylabel(r'$\log L$', fontsize=16)


Out[22]:
<matplotlib.text.Text at 0x7fcd01966590>

In [28]:
# determinando a temperatura central do modelo 155
plt.plot(model, ct, 'b-')
plt.plot(model[154], ct[154], 'ro')
plt.plot(model[2089], ct[2089], 'go')
plt.plot([0, 3000], [8.6, 8.6], 'k--')
plt.ylabel(r'$\log T_c$', fontsize = 16)
plt.xlabel('Model', fontsize = 16)
print 'log temperatura central modelo 155: ', ct[154]
print 'log temperatura central modelo 2090: ', ct[2089]


log temperatura central modelo 155:  8.06926873335
log temperatura central modelo 2090:  8.60157490751

Pelos resultados acima, a faixa de temperatura dos "pulsos termicos" eh de 8 a 8.6 (log T_c).

Com isso, vou definir os parametros:

  • mesh_delta_coeff_for_highT = 0.33d0
  • logT_max_for_standard_mesh_delta_coeff = 8.0d0
  • logT_min_for_highT_mesh_delta_coeff = 8.6d0

Pelo o que eu entendo, nessa faixa de temperatura o parametro mesh_delta_coeff sera dividido por tres, triplicando o numero de camadas e com sorte obtendo os pulsos termicos. Vou rodar o teste no pc da UFRGS e salvar na pasta alpha2_3x_camadas

Ideia: Ver se tem como manter registro do numero de camadas enquanto roda o ./rn . Talves os parametros num_trace_history_values = 1 e trace_history_value_name(1) = 'num_zones' de certo


In [ ]: